package com.tanjie.blackbean.system.admin.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.tanjie.blackbean.mybatis.query.PageParam;
import com.tanjie.blackbean.system.admin.model.permission.PermissionDTO;
import com.tanjie.blackbean.system.admin.model.permission.PermissionPO;
import com.tanjie.blackbean.system.admin.model.permission.PermissionQuery;
import com.tanjie.blackbean.system.admin.model.permission.PermissionVO;

import java.util.List;

/**
 * 权限表
 *
 * @author tanjie
 * @since 2022-04-21
 */
public interface IPermissionService {

    void create(PermissionDTO dto);

    void update(PermissionDTO dto);

    void delete(String id);

    PermissionVO detail(String id);

    List<PermissionVO> queryList(PermissionQuery dto);

    IPage<PermissionVO> queryPage(PermissionQuery dto, PageParam pageParam);

    List<String> listByRoleId(String roleId);

    List<PermissionPO> listByMenuId(String menuId);

}